#!/bin/bash

# 设置错误时退出
set -e

# 源目录（包含要复制的文件）
SOURCE_DIR="dedx_m23"

# 检查源目录是否存在
if [ ! -d "$SOURCE_DIR" ]; then
    echo "错误: 源目录 $SOURCE_DIR 不存在"
    exit 1
fi

# 检查源目录中的必需文件是否存在
if [ ! -f "$SOURCE_DIR/run_rspw.sh" ] || [ ! -f "$SOURCE_DIR/run_ionization.sh" ]; then
    echo "错误: 在 $SOURCE_DIR 中找不到 run_rspw.sh 或 run_ionization.sh"
    exit 1
fi

# 遍历目录 dedx_m2 到 dedx_m21
for i in {2..24}; do
    DIR="dedx_m${i}"
    
    echo "处理目录: $DIR"
    
    # 检查目录是否存在
    if [ ! -d "$DIR" ]; then
        echo "警告: 目录 $DIR 不存在，跳过"
        continue
    fi
    
    # 进入目录
    cd "$DIR"
    
    # 删除 results 和 results1 子目录（如果存在）
    if [ -d "results" ]; then
        echo "  删除子目录 results"
        rm -rf results
    fi
    
    if [ -d "results1" ]; then
        echo "  删除子目录 results1"
        rm -rf results1
    fi
    
    # 从 dedx_m23 复制文件到当前目录
    echo "  从 ../$SOURCE_DIR 复制 run_rspw.sh 和 run_ionization.sh"
    cp "../$SOURCE_DIR/run_rspw.sh" .
    cp "../$SOURCE_DIR/run_ionization.sh" .
    
    # 设置脚本执行权限
    chmod +x run_rspw.sh run_ionization.sh
    
    # 检查 run.sh 是否存在并执行
    if [ -f "run.sh" ]; then
        echo "  执行 ./run.sh"
        chmod +x run.sh
        ./run.sh
    else
        echo "  警告: run.sh 不存在，跳过执行"
    fi
    
    # 返回上级目录
    cd ..
    
    echo "  完成处理 $DIR"
    echo ""
done

echo "所有目录处理完成！"
